[INFO] cloning repository https://github.com/tprk33271/hawkeye-shield
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/tprk33271/hawkeye-shield" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ftprk33271%2Fhawkeye-shield", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ftprk33271%2Fhawkeye-shield'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] b9ab3d18adbab16e48cc58ce46551ce7c3e497e4
[INFO] fixing tprk33271/hawkeye-shield against try#622891a4e29178280638a6b63a8908bde2c0c854+cargoflags=-Zfix-edition=end=2015,2024 for pr-157817-2
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ftprk33271%2Fhawkeye-shield" "/workspace/builds/worker-6-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-6-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/tprk33271/hawkeye-shield
[INFO] finished tweaking git repo https://github.com/tprk33271/hawkeye-shield
[INFO] tweaked toml for git repo https://github.com/tprk33271/hawkeye-shield written to /workspace/builds/worker-6-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/tprk33271/hawkeye-shield on toolchain 622891a4e29178280638a6b63a8908bde2c0c854
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/tprk33271/hawkeye-shield already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/source:/opt/rustwide/workdir:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3a6becf2bc8dde7f3fa57ede90e4f284e72d296796fc446bbb1e2c7cc0530151" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 66a5007fc91ed8c333e5487a16608592cf008b6893fde1e122d29bee26ff1e50
[INFO] running `Command { std: "docker" "start" "66a5007fc91ed8c333e5487a16608592cf008b6893fde1e122d29bee26ff1e50", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "66a5007fc91ed8c333e5487a16608592cf008b6893fde1e122d29bee26ff1e50" "/opt/rustwide/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "66a5007fc91ed8c333e5487a16608592cf008b6893fde1e122d29bee26ff1e50", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=" "-e" "RUSTDOCFLAGS=" "-w" "/opt/rustwide/workdir" "--user" "0:0" "66a5007fc91ed8c333e5487a16608592cf008b6893fde1e122d29bee26ff1e50" "/opt/rustwide/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "fix" "--allow-no-vcs" "--allow-dirty" "--frozen" "--all" "--all-targets" "--message-format=json" "-Zfix-edition=end=2015,2024", kill_on_drop: false }`
[INFO] [stderr] crater-edition-check: migrating to next edition
[INFO] [stderr]    Migrating Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Compiling libc v0.2.186
[INFO] [stderr]     Checking typenum v1.20.0
[INFO] [stderr]     Checking once_cell v1.21.4
[INFO] [stderr]    Compiling zerocopy v0.8.48
[INFO] [stderr]    Compiling zeroize_derive v1.4.3
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]    Compiling hashbrown v0.17.0
[INFO] [stderr]    Compiling generic-array v0.14.7
[INFO] [stderr]    Compiling winnow v1.0.2
[INFO] [stderr]    Compiling toml_datetime v1.1.1+spec-1.1.0
[INFO] [stderr]    Compiling borsh v1.6.1
[INFO] [stderr]    Compiling ahash v0.8.12
[INFO] [stderr]    Compiling bytemuck_derive v1.10.2
[INFO] [stderr]     Checking solana-sanitize v2.2.1
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]     Checking solana-atomic-u64 v2.2.1
[INFO] [stderr]    Compiling semver v1.0.28
[INFO] [stderr]     Checking solana-decode-error v2.3.0
[INFO] [stderr]     Checking bincode v1.3.3
[INFO] [stderr]     Checking log v0.4.29
[INFO] [stderr]    Compiling getrandom v0.1.16
[INFO] [stderr]     Checking bitflags v2.11.1
[INFO] [stderr]    Compiling rustc_version v0.4.1
[INFO] [stderr]     Checking zeroize v1.8.2
[INFO] [stderr]     Checking byteorder v1.5.0
[INFO] [stderr]     Checking signature v1.6.4
[INFO] [stderr]    Compiling solana-sdk-macro v2.2.1
[INFO] [stderr]     Checking serde-big-array v0.5.1
[INFO] [stderr]     Checking solana-msg v2.2.1
[INFO] [stderr]     Checking ed25519 v1.5.3
[INFO] [stderr]     Checking smallvec v1.15.1
[INFO] [stderr]     Checking bytes v1.11.1
[INFO] [stderr]     Checking solana-program-memory v2.3.1
[INFO] [stderr]     Checking either v1.15.0
[INFO] [stderr]    Compiling curve25519-dalek v4.1.3
[INFO] [stderr]    Compiling pkg-config v0.3.33
[INFO] [stderr]     Checking bv v0.11.1
[INFO] [stderr]    Compiling zerofrom-derive v0.1.7
[INFO] [stderr]    Compiling indexmap v2.14.0
[INFO] [stderr]     Checking derivation-path v0.2.0
[INFO] [stderr]     Checking hybrid-array v0.4.11
[INFO] [stderr]    Compiling toml v0.5.11
[INFO] [stderr]    Compiling yoke-derive v0.8.2
[INFO] [stderr]     Checking uriparse v0.6.4
[INFO] [stderr]     Checking qstring v0.7.2
[INFO] [stderr]    Compiling tokio-macros v2.7.0
[INFO] [stderr]    Compiling crunchy v0.2.4
[INFO] [stderr]     Checking cmov v0.5.3
[INFO] [stderr]     Checking block-buffer v0.10.4
[INFO] [stderr]    Compiling toml_parser v1.1.2+spec-1.1.0
[INFO] [stderr]     Checking bytemuck v1.25.0
[INFO] [stderr]    Compiling jobserver v0.1.34
[INFO] [stderr]     Checking digest v0.9.0
[INFO] [stderr]     Checking block-buffer v0.9.0
[INFO] [stderr]     Checking ctutils v0.4.2
[INFO] [stderr]     Checking crypto-common v0.2.1
[INFO] [stderr]     Checking block-buffer v0.12.0
[INFO] [stderr]     Checking sha2 v0.9.9
[INFO] [stderr]     Checking solana-fee-calculator v2.2.1
[INFO] [stderr]    Compiling zerovec-derive v0.11.3
[INFO] [stderr]     Checking constant_time_eq v0.4.2
[INFO] [stderr]     Checking solana-derivation-path v2.2.1
[INFO] [stderr]     Checking futures-channel v0.3.32
[INFO] [stderr]     Checking solana-seed-derivable v2.2.1
[INFO] [stderr]    Compiling toml_edit v0.25.11+spec-1.1.0
[INFO] [stderr]     Checking solana-short-vec v2.2.1
[INFO] [stderr]    Compiling subtle v2.6.1
[INFO] [stderr]    Compiling cc v1.2.61
[INFO] [stderr]    Compiling proc-macro-crate v0.1.5
[INFO] [stderr]     Checking serde_bytes v0.11.19
[INFO] [stderr]     Checking futures-io v0.3.32
[INFO] [stderr]    Compiling num-derive v0.4.2
[INFO] [stderr]     Checking writeable v0.6.3
[INFO] [stderr]     Checking getrandom v0.2.17
[INFO] [stderr]     Checking getrandom v0.3.4
[INFO] [stderr]     Checking errno v0.3.14
[INFO] [stderr]     Checking parking_lot_core v0.9.12
[INFO] [stderr]     Checking rand_core v0.5.1
[INFO] [stderr]     Checking socket2 v0.6.3
[INFO] [stderr]     Checking zerofrom v0.1.7
[INFO] [stderr]     Checking signal-hook-registry v1.4.8
[INFO] [stderr]     Checking rand_core v0.6.4
[INFO] [stderr]     Checking mio v1.2.0
[INFO] [stderr]     Checking parking_lot v0.12.5
[INFO] [stderr]     Checking digest v0.11.2
[INFO] [stderr]     Checking futures-util v0.3.32
[INFO] [stderr]     Checking yoke v0.8.2
[INFO] [stderr]     Checking litemap v0.8.2
[INFO] [stderr]     Checking crypto-common v0.1.7
[INFO] [stderr]     Checking curve25519-dalek v3.2.0
[INFO] [stderr]    Compiling libsecp256k1-core v0.2.2
[INFO] [stderr]     Checking crypto-mac v0.8.0
[INFO] [stderr]     Checking rustls-pki-types v1.14.1
[INFO] [stderr]     Checking digest v0.10.7
[INFO] [stderr]     Checking zerotrie v0.2.4
[INFO] [stderr]    Compiling icu_normalizer_data v2.2.0
[INFO] [stderr]    Compiling icu_properties_data v2.2.0
[INFO] [stderr]     Checking hmac v0.8.1
[INFO] [stderr]     Checking hmac-drbg v0.3.0
[INFO] [stderr]     Checking http v1.4.0
[INFO] [stderr]     Checking tracing-core v0.1.36
[INFO] [stderr]    Compiling openssl v0.10.78
[INFO] [stderr]     Checking base64 v0.12.3
[INFO] [stderr]    Compiling rustls v0.23.39
[INFO] [stderr]    Compiling proc-macro-crate v3.5.0
[INFO] [stderr]     Checking tokio v1.52.1
[INFO] [stderr]     Checking sha2 v0.10.9
[INFO] [stderr]     Checking sha3 v0.10.9
[INFO] [stderr]     Checking hmac v0.12.1
[INFO] [stderr]     Checking pbkdf2 v0.11.0
[INFO] [stderr]     Checking itertools v0.12.1
[INFO] [stderr]     Checking tracing v0.1.44
[INFO] [stderr]     Checking alloc-no-stdlib v2.0.4
[INFO] [stderr]     Checking alloc-stdlib v0.2.2
[INFO] [stderr]     Checking inout v0.1.4
[INFO] [stderr]    Compiling borsh-derive v1.6.1
[INFO] [stderr]     Checking solana-seed-phrase v2.2.1
[INFO] [stderr]     Checking solana-precompile-error v2.2.2
[INFO] [stderr]     Checking cipher v0.4.4
[INFO] [stderr]     Checking zerovec v0.11.6
[INFO] [stderr]     Checking brotli-decompressor v5.0.0
[INFO] [stderr]     Checking compression-core v0.4.32
[INFO] [stderr]     Checking ryu v1.0.23
[INFO] [stderr]     Checking http-body v1.0.1
[INFO] [stderr]     Checking universal-hash v0.5.1
[INFO] [stderr]     Checking sync_wrapper v1.0.2
[INFO] [stderr]     Checking solana-serde-varint v2.2.2
[INFO] [stderr]    Compiling libsecp256k1-gen-genmult v0.2.1
[INFO] [stderr]    Compiling libsecp256k1-gen-ecmult v0.2.1
[INFO] [stderr]     Checking ipnet v2.12.0
[INFO] [stderr]     Checking bs58 v0.5.1
[INFO] [stderr]     Checking polyval v0.6.2
[INFO] [stderr]     Checking ctr v0.9.2
[INFO] [stderr]     Checking http-body-util v0.1.3
[INFO] [stderr]    Compiling libsecp256k1 v0.6.0
[INFO] [stderr]    Compiling ring v0.17.14
[INFO] [stderr]    Compiling blake3 v1.8.5
[INFO] [stderr]    Compiling openssl-sys v0.9.114
[INFO] [stderr]    Compiling zstd-sys v2.0.16+zstd.1.5.7
[INFO] [stderr]     Checking aes v0.8.4
[INFO] [stderr]     Checking webpki-roots v1.0.7
[INFO] [stderr]     Checking tinystr v0.8.3
[INFO] [stderr]     Checking potential_utf v0.1.5
[INFO] [stderr]     Checking icu_collections v2.2.0
[INFO] [stderr]     Checking icu_locale_core v2.2.0
[INFO] [stderr]     Checking brotli v8.0.2
[INFO] [stderr]     Checking aead v0.5.2
[INFO] [stderr]    Compiling zstd-safe v7.2.4
[INFO] [stderr]    Compiling borsh-derive-internal v0.10.4
[INFO] [stderr]    Compiling borsh-schema-derive-internal v0.10.4
[INFO] [stderr]     Checking solana-program-option v2.2.1
[INFO] [stderr]     Checking iri-string v0.7.12
[INFO] [stderr]     Checking ppv-lite86 v0.2.21
[INFO] [stderr]     Checking aes-gcm-siv v0.11.1
[INFO] [stderr]     Checking serde_urlencoded v0.7.1
[INFO] [stderr]     Checking merlin v3.0.0
[INFO] [stderr]    Compiling cpufeatures v0.2.17
[INFO] [stderr]     Checking hashbrown v0.13.2
[INFO] [stderr]     Checking icu_provider v2.2.0
[INFO] [stderr]    Compiling strsim v0.11.1
[INFO] [stderr]    Compiling ident_case v1.0.1
[INFO] [stderr]     Checking solana-reward-info v2.2.1
[INFO] [stderr]     Checking solana-commitment-config v2.2.1
[INFO] [stderr]    Compiling darling_core v0.23.0
[INFO] [stderr]     Checking solana-svm-feature-set v2.3.13
[INFO] [stderr]     Checking icu_normalizer v2.2.0
[INFO] [stderr]     Checking icu_properties v2.2.0
[INFO] [stderr]    Compiling anyhow v1.0.102
[INFO] [stderr]     Checking solana-time-utils v2.2.1
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]     Checking rand_chacha v0.2.2
[INFO] [stderr]     Checking futures-executor v0.3.32
[INFO] [stderr]     Checking rand v0.7.3
[INFO] [stderr]     Checking crossbeam-epoch v0.9.18
[INFO] [stderr]    Compiling thiserror v1.0.69
[INFO] [stderr]     Checking solana-inflation v2.2.1
[INFO] [stderr]     Checking rand v0.8.6
[INFO] [stderr]    Compiling rayon-core v1.13.0
[INFO] [stderr]     Checking data-encoding v2.11.0
[INFO] [stderr]    Compiling portable-atomic v1.13.1
[INFO] [stderr]     Checking futures v0.3.32
[INFO] [stderr]    Compiling spl-discriminator-syn v0.2.1
[INFO] [stderr]     Checking regex-automata v0.4.14
[INFO] [stderr]     Checking solana-hash v2.3.0
[INFO] [stderr]     Checking crossbeam-deque v0.8.6
[INFO] [stderr]     Checking solana-sha256-hasher v2.3.0
[INFO] [stderr]     Checking solana-cluster-type v2.2.1
[INFO] [stderr]     Checking crossbeam-channel v0.5.15
[INFO] [stderr]     Checking rand_core v0.9.5
[INFO] [stderr]     Checking ed25519-dalek v1.0.1
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling solana-version v2.3.13
[INFO] [stderr]     Checking idna_adapter v1.2.2
[INFO] [stderr]    Compiling unicode-xid v0.2.6
[INFO] [stderr]     Checking solana-signature v2.3.0
[INFO] [stderr]     Checking idna v1.1.0
[INFO] [stderr]     Checking ed25519-dalek-bip32 v0.2.0
[INFO] [stderr]    Compiling synstructure v0.12.6
[INFO] [stderr]     Checking rand_chacha v0.9.0
[INFO] [stderr]    Compiling spl-discriminator-derive v0.2.0
[INFO] [stderr]     Checking url v2.5.8
[INFO] [stderr]    Compiling borsh-derive v0.10.4
[INFO] [stderr]     Checking gethostname v0.2.3
[INFO] [stderr]    Compiling nix v0.30.1
[INFO] [stderr]     Checking rayon v1.12.0
[INFO] [stderr]     Checking borsh v0.10.4
[INFO] [stderr]    Compiling asn1-rs-derive v0.4.0
[INFO] [stderr]     Checking rand v0.9.4
[INFO] [stderr]    Compiling asn1-rs-impl v0.1.0
[INFO] [stderr]    Compiling num-bigint v0.2.6
[INFO] [stderr]    Compiling cfg_eval v0.1.2
[INFO] [stderr]    Compiling signal-hook v0.3.18
[INFO] [stderr]    Compiling paste v1.0.15
[INFO] [stderr]     Checking asn1-rs v0.5.2
[INFO] [stderr]     Checking compression-codecs v0.4.38
[INFO] [stderr]     Checking solana-pubkey v2.4.0
[INFO] [stderr]     Checking solana-borsh v2.2.1
[INFO] [stderr]    Compiling num_enum_derive v0.7.6
[INFO] [stderr]    Compiling num-rational v0.2.4
[INFO] [stderr]     Checking hyper v1.9.0
[INFO] [stderr]     Checking tower v0.5.3
[INFO] [stderr]     Checking tokio-util v0.7.18
[INFO] [stderr]     Checking async-compression v0.4.42
[INFO] [stderr]     Checking solana-instruction v2.3.3
[INFO] [stderr]     Checking solana-sdk-ids v2.2.1
[INFO] [stderr]     Checking solana-sysvar-id v2.2.1
[INFO] [stderr]     Checking solana-epoch-schedule v2.2.1
[INFO] [stderr]     Checking solana-transaction-error v2.2.1
[INFO] [stderr]     Checking solana-program-error v2.2.2
[INFO] [stderr]     Checking solana-system-interface v1.0.0
[INFO] [stderr]     Checking solana-clock v2.2.3
[INFO] [stderr]     Checking solana-account-info v2.3.0
[INFO] [stderr]     Checking solana-serialize-utils v2.2.1
[INFO] [stderr]     Checking solana-slot-hashes v2.2.1
[INFO] [stderr]     Checking solana-rent v2.2.1
[INFO] [stderr]     Checking solana-last-restart-slot v2.2.1
[INFO] [stderr]     Checking solana-cpi v2.2.1
[INFO] [stderr]     Checking solana-signer v2.2.1
[INFO] [stderr]     Checking solana-program-entrypoint v2.3.0
[INFO] [stderr]     Checking solana-instructions-sysvar v2.2.2
[INFO] [stderr]     Checking solana-epoch-rewards v2.2.1
[INFO] [stderr]     Checking solana-slot-history v2.2.1
[INFO] [stderr]     Checking solana-stake-interface v1.2.1
[INFO] [stderr]     Checking solana-bincode v2.2.1
[INFO] [stderr]     Checking solana-feature-set v2.2.5
[INFO] [stderr]     Checking solana-message v2.4.0
[INFO] [stderr]     Checking tower-http v0.6.8
[INFO] [stderr]     Checking agave-feature-set v2.3.13
[INFO] [stderr]     Checking solana-keypair v2.2.3
[INFO] [stderr]     Checking hyper-util v0.1.20
[INFO] [stderr]     Checking solana-zk-sdk v2.3.13
[INFO] [stderr]     Checking solana-vote-interface v2.2.6
[INFO] [stderr]     Checking spl-generic-token v1.0.1
[INFO] [stderr]     Checking solana-nonce v2.2.1
[INFO] [stderr]     Checking spl-discriminator v0.4.1
[INFO] [stderr]     Checking regex v1.12.3
[INFO] [stderr]     Checking solana-program-pack v2.2.1
[INFO] [stderr]    Compiling num-integer v0.1.46
[INFO] [stderr]    Compiling num-complex v0.2.4
[INFO] [stderr]     Checking solana-sysvar v2.3.0
[INFO] [stderr]    Compiling oid-registry v0.6.1
[INFO] [stderr]    Compiling rustls v0.21.12
[INFO] [stderr]     Checking solana-ed25519-program v2.2.3
[INFO] [stderr]     Checking solana-native-token v2.3.0
[INFO] [stderr]     Checking solana-account v2.2.1
[INFO] [stderr]     Checking rustls-webpki v0.103.13
[INFO] [stderr]     Checking rustls-webpki v0.101.7
[INFO] [stderr]     Checking sct v0.7.1
[INFO] [stderr]    Compiling darling_macro v0.23.0
[INFO] [stderr]     Checking num_enum v0.7.6
[INFO] [stderr]     Checking solana-address-lookup-table-interface v2.2.2
[INFO] [stderr]     Checking solana-transaction-context v2.3.13
[INFO] [stderr]     Checking solana-feature-gate-interface v2.2.2
[INFO] [stderr]    Compiling num-bigint v0.4.6
[INFO] [stderr]     Checking solana-secp256r1-program v2.2.4
[INFO] [stderr]    Compiling ark-serialize-derive v0.4.2
[INFO] [stderr]    Compiling darling v0.23.0
[INFO] [stderr]    Compiling serde_with_macros v3.18.0
[INFO] [stderr]     Checking ark-std v0.4.0
[INFO] [stderr]     Checking solana-keccak-hasher v2.2.1
[INFO] [stderr]     Checking jsonrpc-core v18.0.0
[INFO] [stderr]     Checking rustls-native-certs v0.8.3
[INFO] [stderr]    Compiling spl-program-error-derive v0.5.0
[INFO] [stderr]     Checking solana-curve25519 v2.3.13
[INFO] [stderr]     Checking sha1 v0.10.6
[INFO] [stderr]     Checking num_cpus v1.17.0
[INFO] [stderr]     Checking solana-serde v2.2.1
[INFO] [stderr]     Checking solana-epoch-info v2.2.1
[INFO] [stderr]    Compiling quinn-udp v0.5.14
[INFO] [stderr]    Compiling dlopen2_derive v0.3.0
[INFO] [stderr]     Checking unicode-width v0.2.2
[INFO] [stderr]     Checking solana-measure v2.3.13
[INFO] [stderr]    Compiling solana-perf v2.3.13
[INFO] [stderr]     Checking utf-8 v0.7.6
[INFO] [stderr]     Checking siphasher v1.0.2
[INFO] [stderr]     Checking console v0.15.11
[INFO] [stderr]     Checking solana-rayon-threadlimit v2.3.13
[INFO] [stderr]     Checking ark-serialize v0.4.2
[INFO] [stderr]     Checking solana-example-mocks v2.2.1
[INFO] [stderr]     Checking spl-pod v0.5.1
[INFO] [stderr]     Checking fastbloom v0.14.1
[INFO] [stderr]     Checking dlopen2 v0.5.0
[INFO] [stderr]     Checking spl-program-error v0.7.0
[INFO] [stderr]     Checking der-parser v8.2.0
[INFO] [stderr]     Checking solana-quic-definitions v2.3.1
[INFO] [stderr]     Checking solana-loader-v3-interface v5.0.0
[INFO] [stderr]     Checking solana-loader-v4-interface v2.2.1
[INFO] [stderr]     Checking solana-loader-v2-interface v2.2.1
[INFO] [stderr]     Checking spl-type-length-value v0.8.0
[INFO] [stderr]     Checking solana-stable-layout v2.2.1
[INFO] [stderr]    Compiling derivative v2.2.0
[INFO] [stderr]    Compiling ark-ff-asm v0.4.2
[INFO] [stderr]     Checking solana-blake3-hasher v2.2.1
[INFO] [stderr]     Checking solana-big-mod-exp v2.2.1
[INFO] [stderr]     Checking socket2 v0.5.10
[INFO] [stderr]     Checking caps v0.5.6
[INFO] [stderr]     Checking num-iter v0.1.45
[INFO] [stderr]     Checking itertools v0.10.5
[INFO] [stderr]     Checking raw-cpuid v11.6.0
[INFO] [stderr]    Compiling quinn v0.11.9
[INFO] [stderr]     Checking lru-slab v0.1.2
[INFO] [stderr]     Checking number_prefix v0.4.0
[INFO] [stderr]     Checking solana-secp256k1-program v2.2.3
[INFO] [stderr]     Checking solana-secp256k1-recover v2.2.1
[INFO] [stderr]     Checking rustc-hash v2.1.2
[INFO] [stderr]     Checking hashbrown v0.14.5
[INFO] [stderr]     Checking spl-tlv-account-resolution v0.10.0
[INFO] [stderr]     Checking x509-parser v0.14.0
[INFO] [stderr]     Checking indicatif v0.17.11
[INFO] [stderr]     Checking num v0.2.1
[INFO] [stderr]     Checking solana-program v2.3.0
[INFO] [stderr]     Checking solana-precompiles v2.2.2
[INFO] [stderr]     Checking solana-net-utils v2.3.13
[INFO] [stderr]     Checking spl-token-confidential-transfer-proof-extraction v0.3.0
[INFO] [stderr]     Checking solana-transaction v2.2.3
[INFO] [stderr]     Checking webpki-roots v0.24.0
[INFO] [stderr]     Checking atty v0.2.14
[INFO] [stderr]     Checking http v0.2.12
[INFO] [stderr]     Checking spinning_top v0.3.0
[INFO] [stderr]    Compiling ark-ff-macros v0.4.2
[INFO] [stderr]     Checking serde_with v3.18.0
[INFO] [stderr]     Checking no-std-compat v0.4.1
[INFO] [stderr]     Checking termcolor v1.4.1
[INFO] [stderr]     Checking futures-timer v3.0.3
[INFO] [stderr]     Checking nonzero_ext v0.3.0
[INFO] [stderr]     Checking humantime v2.3.0
[INFO] [stderr]     Checking async-channel v1.9.0
[INFO] [stderr]    Compiling native-tls v0.2.18
[INFO] [stderr]     Checking spl-elgamal-registry v0.2.0
[INFO] [stderr]     Checking spl-transfer-hook-interface v0.10.0
[INFO] [stderr]     Checking percentage v0.1.0
[INFO] [stderr]     Checking env_logger v0.9.3
[INFO] [stderr]     Checking spl-token-metadata-interface v0.7.0
[INFO] [stderr]     Checking dashmap v5.5.3
[INFO] [stderr]     Checking spl-token-group-interface v0.6.0
[INFO] [stderr]     Checking spl-token-confidential-transfer-proof-generation v0.4.1
[INFO] [stderr]     Checking spl-token-confidential-transfer-ciphertext-arithmetic v0.3.1
[INFO] [stderr]     Checking solana-client-traits v2.2.1
[INFO] [stderr]     Checking pem v1.1.1
[INFO] [stderr]     Checking spl-token v8.0.0
[INFO] [stderr]     Checking spl-memo v6.0.0
[INFO] [stderr]     Checking solana-hard-forks v2.2.1
[INFO] [stderr]     Checking webpki-roots v0.25.4
[INFO] [stderr]     Checking histogram v0.6.9
[INFO] [stderr]     Checking solana-security-txt v1.1.1
[INFO] [stderr]     Checking solana-logger v2.3.1
[INFO] [stderr]     Checking tokio-stream v0.1.18
[INFO] [stderr]     Checking kaigan v0.2.6
[INFO] [stderr]     Checking solana-shred-version v2.2.1
[INFO] [stderr]     Checking memmap2 v0.5.10
[INFO] [stderr]     Checking mio v0.8.11
[INFO] [stderr]     Checking solana-packet v2.2.1
[INFO] [stderr]     Checking solana-poh-config v2.2.1
[INFO] [stderr]     Checking foldhash v0.1.5
[INFO] [stderr]     Checking allocator-api2 v0.2.21
[INFO] [stderr]     Checking tungstenite v0.20.1
[INFO] [stderr]     Checking tokio-rustls v0.24.1
[INFO] [stderr]     Checking solana-config-program-client v0.0.2
[INFO] [stderr]     Checking solana-genesis-config v2.3.0
[INFO] [stderr]     Checking quanta v0.12.6
[INFO] [stderr]    Compiling strum_macros v0.26.4
[INFO] [stderr]     Checking Inflector v0.11.4
[INFO] [stderr]     Checking spl-associated-token-account-client v2.0.0
[INFO] [stderr]     Checking castaway v0.2.4
[INFO] [stderr]     Checking itertools v0.13.0
[INFO] [stderr]     Checking unicode-width v0.1.14
[INFO] [stderr]     Checking unicode-segmentation v1.13.2
[INFO] [stderr]     Checking signal-hook-mio v0.2.5
[INFO] [stderr]     Checking solana-define-syscall v2.3.0
[INFO] [stderr]     Checking governor v0.6.3
[INFO] [stderr]     Checking siphasher v0.3.11
[INFO] [stderr]     Checking static_assertions v1.1.0
[INFO] [stderr]     Checking crossterm v0.27.0
[INFO] [stderr]     Checking solana-offchain-message v2.2.1
[INFO] [stderr]     Checking compact_str v0.7.1
[INFO] [stderr]     Checking solana-epoch-rewards-hasher v2.2.1
[INFO] [stderr]     Checking tungstenite v0.26.2
[INFO] [stderr]     Checking tokio-native-tls v0.3.1
[INFO] [stderr]     Checking solana-rent-collector v2.3.0
[INFO] [stderr]     Checking solana-system-transaction v2.2.1
[INFO] [stderr]     Checking solana-nonce-account v2.2.1
[INFO] [stderr]     Checking tokio-tungstenite v0.20.1
[INFO] [stderr]     Checking solana-fee-structure v2.3.0
[INFO] [stderr]     Checking solana-reserved-account-keys v2.2.2
[INFO] [stderr]     Checking hashbrown v0.15.5
[INFO] [stderr]     Checking agave-reserved-account-keys v2.3.13
[INFO] [stderr]     Checking tokio-rustls v0.26.4
[INFO] [stderr]     Checking rustls-platform-verifier v0.6.2
[INFO] [stderr]     Checking solana-tls-utils v2.3.13
[INFO] [stderr]     Checking solana-presigner v2.2.1
[INFO] [stderr]     Checking matchers v0.2.0
[INFO] [stderr]     Checking spl-token-2022 v8.0.1
[INFO] [stderr]     Checking solana-compute-budget-interface v2.2.2
[INFO] [stderr]     Checking solana-rent-debits v2.2.1
[INFO] [stderr]     Checking tracing-log v0.2.0
[INFO] [stderr]     Checking quinn-proto v0.11.14
[INFO] [stderr]     Checking thread_local v1.1.9
[INFO] [stderr]     Checking ark-ff v0.4.2
[INFO] [stderr]    Compiling stability v0.2.1
[INFO] [stderr]     Checking solana-validator-exit v2.2.1
[INFO] [stderr]     Checking cassowary v0.3.0
[INFO] [stderr]     Checking nu-ansi-term v0.50.3
[INFO] [stderr]     Checking hyper-rustls v0.27.9
[INFO] [stderr]     Checking dotenv v0.15.0
[INFO] [stderr]     Checking unicode-truncate v1.1.0
[INFO] [stderr]     Checking tracing-subscriber v0.3.23
[INFO] [stderr]     Checking reqwest v0.12.28
[INFO] [stderr]     Checking tokio-tungstenite v0.26.2
[INFO] [stderr]     Checking lru v0.12.5
[INFO] [stderr]     Checking strum v0.26.3
[INFO] [stderr]     Checking ratatui v0.26.3
[INFO] [stderr]     Checking solana-metrics v2.3.13
[INFO] [stderr]     Checking reqwest-middleware v0.4.2
[INFO] [stderr]     Checking solana-connection-cache v2.3.13
[INFO] [stderr]     Checking zstd v0.13.3
[INFO] [stderr]     Checking spl-associated-token-account v7.0.0
[INFO] [stderr]     Checking solana-account-decoder-client-types v2.3.13
[INFO] [stderr]     Checking solana-transaction-metrics-tracker v2.3.13
[INFO] [stderr]     Checking solana-transaction-status-client-types v2.3.13
[INFO] [stderr]     Checking solana-account-decoder v2.3.13
[INFO] [stderr]     Checking solana-streamer v2.3.13
[INFO] [stderr]     Checking solana-rpc-client-types v2.3.13
[INFO] [stderr]     Checking solana-transaction-status v2.3.13
[INFO] [stderr]     Checking solana-udp-client v2.3.13
[INFO] [stderr]     Checking ark-poly v0.4.2
[INFO] [stderr]     Checking ark-ec v0.4.2
[INFO] [stderr]     Checking solana-rpc-client-api v2.3.13
[INFO] [stderr]     Checking solana-pubsub-client v2.3.13
[INFO] [stderr]     Checking solana-rpc-client v2.3.13
[INFO] [stderr]     Checking solana-quic-client v2.3.13
[INFO] [stderr]     Checking solana-rpc-client-nonce-utils v2.3.13
[INFO] [stderr]     Checking solana-thin-client v2.3.13
[INFO] [stderr]     Checking solana-tpu-client v2.3.13
[INFO] [stderr]     Checking ark-bn254 v0.4.0
[INFO] [stderr]     Checking solana-bn254 v2.2.2
[INFO] [stderr]     Checking solana-client v2.3.13
[INFO] [stderr]     Checking solana-sdk v2.3.1
[INFO] [stderr]     Checking hawkeye-shield v0.1.0 (/opt/rustwide/workdir)
[INFO] [stderr]    Migrating src/main.rs from 2021 edition to 2024
[INFO] [stderr]        Fixed src/websocket.rs (1 fix)
[INFO] [stderr]        Fixed src/tui.rs (2 fixes)
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/executor.rs:468:35
[INFO] [stdout]      |
[INFO] [stdout]  454 |             tokio::time::sleep(std::time::Duration::from_secs(3)).await;
[INFO] [stdout]      |             -----------------------------------------------------------
[INFO] [stdout]      |             |
[INFO] [stdout]      |             `__awaitee` calls a custom destructor
[INFO] [stdout]      |             `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  458 |                 let trades = self.active_trades.lock().await;
[INFO] [stdout]      |                     ------   -------------------------------
[INFO] [stdout]      |                     |        |                         |
[INFO] [stdout]      |                     |        |                         this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                     |        |                         `#2` will be dropped later as of Edition 2024
[INFO] [stdout]      |                     |        this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                     |        `#1` will be dropped later as of Edition 2024
[INFO] [stdout]      |                     `trades` calls a custom destructor
[INFO] [stdout]      |                     `trades` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  467 |             if let Ok(resp) = jup_client.get(format!("https://api.jup.ag/price/v2?ids={}", address)).send().await {
[INFO] [stdout]      |                               -----------------------------------------------------------------------------------
[INFO] [stdout]      |                               |                                                                             |
[INFO] [stdout]      |                               |                                                                             this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]      |                               |                                                                             `#5` will be dropped later as of Edition 2024
[INFO] [stdout]      |                               this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                               `#3` will be dropped later as of Edition 2024
[INFO] [stdout]      |                               this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |                               `#4` will be dropped later as of Edition 2024
[INFO] [stdout]  468 |                 if let Ok(body) = resp.json::<serde_json::Value>().await {
[INFO] [stdout]      |                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]      |                                   |                                |
[INFO] [stdout]      |                                   |                                this value will be stored in a temporary; let us call it `#15`
[INFO] [stdout]      |                                   |                                up until Edition 2021 `#15` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                                   |                                this value will be stored in a temporary; let us call it `#7`
[INFO] [stdout]      |                                   |                                `#7` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                   this value will be stored in a temporary; let us call it `#14`
[INFO] [stdout]      |                                   up until Edition 2021 `#14` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                                   this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]      |                                   `#6` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  476 |             }
[INFO] [stdout]      |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout] ...
[INFO] [stdout]  481 |                 if let Ok(price) = self.birdeye.get_price(&address).await {
[INFO] [stdout]      |                                    --------------------------------------
[INFO] [stdout]      |                                    |                                |
[INFO] [stdout]      |                                    |                                this value will be stored in a temporary; let us call it `#9`
[INFO] [stdout]      |                                    |                                `#9` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                    this value will be stored in a temporary; let us call it `#8`
[INFO] [stdout]      |                                    `#8` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  490 |                 let mut trades = self.active_trades.lock().await;
[INFO] [stdout]      |                     ----------   -------------------------------
[INFO] [stdout]      |                     |            |                         |
[INFO] [stdout]      |                     |            |                         this value will be stored in a temporary; let us call it `#12`
[INFO] [stdout]      |                     |            |                         `#12` will be dropped later as of Edition 2024
[INFO] [stdout]      |                     |            this value will be stored in a temporary; let us call it `#11`
[INFO] [stdout]      |                     |            `#11` will be dropped later as of Edition 2024
[INFO] [stdout]      |                     this value will be stored in a temporary; let us call it `#10`
[INFO] [stdout]      |                     `#10` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  559 |                 self.execute_sell_action(&token, 50, "TP1", current_value_sol).await;
[INFO] [stdout]      |                 --------------------------------------------------------------------
[INFO] [stdout]      |                 |
[INFO] [stdout]      |                 this value will be stored in a temporary; let us call it `#13`
[INFO] [stdout]      |                 `#13` will be dropped later as of Edition 2024
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#14` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#14` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `__awaitee` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/pin-project-lite-0.2.17/src/lib.rs:1317:9
[INFO] [stdout]      |
[INFO] [stdout] 1317 | /         impl $(<
[INFO] [stdout] 1318 | |             $( $lifetime $(: $lifetime_bound)? ,)*
[INFO] [stdout] 1319 | |             $( $generics
[INFO] [stdout] 1320 | |                 $(: $generics_bound)?
[INFO] [stdout] ...    |
[INFO] [stdout] 1323 | |             ),*
[INFO] [stdout] 1324 | |         >)? $crate::__private::Drop for $self_ty
[INFO] [stdout]      | |________________________________________________^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.52.1/src/runtime/time/entry.rs:280:1
[INFO] [stdout]      |
[INFO] [stdout]  280 | / pin_project! {
[INFO] [stdout] ...    |
[INFO] [stdout]  310 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout] note: `trades` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.52.1/src/sync/mutex.rs:964:1
[INFO] [stdout]      |
[INFO] [stdout]  964 | impl<T: ?Sized> Drop for MutexGuard<'_, T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.52.1/src/sync/mutex.rs:964:1
[INFO] [stdout]      |
[INFO] [stdout]  964 | impl<T: ?Sized> Drop for MutexGuard<'_, T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#3` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#5` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#5` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#7` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#7` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#9` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#10` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.52.1/src/sync/mutex.rs:964:1
[INFO] [stdout]      |
[INFO] [stdout]  964 | impl<T: ?Sized> Drop for MutexGuard<'_, T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#12` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.52.1/src/sync/mutex.rs:964:1
[INFO] [stdout]      |
[INFO] [stdout]  964 | impl<T: ?Sized> Drop for MutexGuard<'_, T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]      = note: `--force-warn tail-expr-drop-order` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout]      = note: this warning originates in the macro `$crate::__pin_project_make_drop_impl` which comes from the expansion of the macro `pin_project` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/executor.rs:481:36
[INFO] [stdout]      |
[INFO] [stdout]  454 |             tokio::time::sleep(std::time::Duration::from_secs(3)).await;
[INFO] [stdout]      |             -----------------------------------------------------------
[INFO] [stdout]      |             |
[INFO] [stdout]      |             `__awaitee` calls a custom destructor
[INFO] [stdout]      |             `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  458 |                 let trades = self.active_trades.lock().await;
[INFO] [stdout]      |                     ------   -------------------------------
[INFO] [stdout]      |                     |        |                         |
[INFO] [stdout]      |                     |        |                         this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                     |        |                         `#2` will be dropped later as of Edition 2024
[INFO] [stdout]      |                     |        this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                     |        `#1` will be dropped later as of Edition 2024
[INFO] [stdout]      |                     `trades` calls a custom destructor
[INFO] [stdout]      |                     `trades` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  467 |             if let Ok(resp) = jup_client.get(format!("https://api.jup.ag/price/v2?ids={}", address)).send().await {
[INFO] [stdout]      |                               -----------------------------------------------------------------------------------
[INFO] [stdout]      |                               |                                                                             |
[INFO] [stdout]      |                               |                                                                             this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]      |                               |                                                                             `#5` will be dropped later as of Edition 2024
[INFO] [stdout]      |                               this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                               `#3` will be dropped later as of Edition 2024
[INFO] [stdout]      |                               this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |                               `#4` will be dropped later as of Edition 2024
[INFO] [stdout]  468 |                 if let Ok(body) = resp.json::<serde_json::Value>().await {
[INFO] [stdout]      |                                   --------------------------------------
[INFO] [stdout]      |                                   |                                |
[INFO] [stdout]      |                                   |                                this value will be stored in a temporary; let us call it `#7`
[INFO] [stdout]      |                                   |                                `#7` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                   this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]      |                                   `#6` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  481 |                 if let Ok(price) = self.birdeye.get_price(&address).await {
[INFO] [stdout]      |                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]      |                                    |                                |
[INFO] [stdout]      |                                    |                                this value will be stored in a temporary; let us call it `#15`
[INFO] [stdout]      |                                    |                                up until Edition 2021 `#15` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                                    |                                this value will be stored in a temporary; let us call it `#9`
[INFO] [stdout]      |                                    |                                `#9` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                    this value will be stored in a temporary; let us call it `#14`
[INFO] [stdout]      |                                    up until Edition 2021 `#14` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                                    this value will be stored in a temporary; let us call it `#8`
[INFO] [stdout]      |                                    `#8` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  487 |             }
[INFO] [stdout]      |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout] ...
[INFO] [stdout]  490 |                 let mut trades = self.active_trades.lock().await;
[INFO] [stdout]      |                     ----------   -------------------------------
[INFO] [stdout]      |                     |            |                         |
[INFO] [stdout]      |                     |            |                         this value will be stored in a temporary; let us call it `#12`
[INFO] [stdout]      |                     |            |                         `#12` will be dropped later as of Edition 2024
[INFO] [stdout]      |                     |            this value will be stored in a temporary; let us call it `#11`
[INFO] [stdout]      |                     |            `#11` will be dropped later as of Edition 2024
[INFO] [stdout]      |                     this value will be stored in a temporary; let us call it `#10`
[INFO] [stdout]      |                     `#10` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  559 |                 self.execute_sell_action(&token, 50, "TP1", current_value_sol).await;
[INFO] [stdout]      |                 --------------------------------------------------------------------
[INFO] [stdout]      |                 |
[INFO] [stdout]      |                 this value will be stored in a temporary; let us call it `#13`
[INFO] [stdout]      |                 `#13` will be dropped later as of Edition 2024
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#14` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `__awaitee` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/pin-project-lite-0.2.17/src/lib.rs:1317:9
[INFO] [stdout]      |
[INFO] [stdout] 1317 | /         impl $(<
[INFO] [stdout] 1318 | |             $( $lifetime $(: $lifetime_bound)? ,)*
[INFO] [stdout] 1319 | |             $( $generics
[INFO] [stdout] 1320 | |                 $(: $generics_bound)?
[INFO] [stdout] ...    |
[INFO] [stdout] 1323 | |             ),*
[INFO] [stdout] 1324 | |         >)? $crate::__private::Drop for $self_ty
[INFO] [stdout]      | |________________________________________________^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.52.1/src/runtime/time/entry.rs:280:1
[INFO] [stdout]      |
[INFO] [stdout]  280 | / pin_project! {
[INFO] [stdout] ...    |
[INFO] [stdout]  310 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout] note: `trades` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.52.1/src/sync/mutex.rs:964:1
[INFO] [stdout]      |
[INFO] [stdout]  964 | impl<T: ?Sized> Drop for MutexGuard<'_, T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.52.1/src/sync/mutex.rs:964:1
[INFO] [stdout]      |
[INFO] [stdout]  964 | impl<T: ?Sized> Drop for MutexGuard<'_, T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#3` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#5` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#5` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#7` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#7` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#9` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#10` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.52.1/src/sync/mutex.rs:964:1
[INFO] [stdout]      |
[INFO] [stdout]  964 | impl<T: ?Sized> Drop for MutexGuard<'_, T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#12` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.52.1/src/sync/mutex.rs:964:1
[INFO] [stdout]      |
[INFO] [stdout]  964 | impl<T: ?Sized> Drop for MutexGuard<'_, T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]      = note: this warning originates in the macro `$crate::__pin_project_make_drop_impl` which comes from the expansion of the macro `pin_project` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/executor.rs:740:108
[INFO] [stdout]     |
[INFO] [stdout] 616 |         let client = reqwest::Client::new();
[INFO] [stdout]     |             ------
[INFO] [stdout]     |             |
[INFO] [stdout]     |             `client` calls a custom destructor
[INFO] [stdout]     |             `client` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 740 |         match do_sell(&client, &quote_url, headers, &self.jup_base, wallet, &self.config, &self.write_rpc).await {
[INFO] [stdout]     |                                                                                                            ^^^^^
[INFO] [stdout]     |                                                                                                            |
[INFO] [stdout]     |                                                                                                            this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                                                                                                            up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 748 |     }
[INFO] [stdout]     |     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `client` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.32/src/oneshot.rs:387:1
[INFO] [stdout]     |
[INFO] [stdout] 387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.32/src/oneshot.rs:387:1
[INFO] [stdout]     |
[INFO] [stdout] 387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.52.1/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]     |
[INFO] [stdout] 225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/main.rs:105:42
[INFO] [stdout]     |
[INFO] [stdout]  76 | /         tokio::select! {
[INFO] [stdout]  77 | |             Some(event) = ws_rx.recv() => {
[INFO] [stdout]  78 | |                 let active_count = executor.active_trades.lock().await.len();
[INFO] [stdout]     | |                                    -----------------------------------
[INFO] [stdout]     | |                                    |                             |
[INFO] [stdout]     | |                                    |                             this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     | |                                    |                             `#2` will be dropped later as of Edition 2024
[INFO] [stdout]     | |                                    this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     | |                                    `#1` will be dropped later as of Edition 2024
[INFO] [stdout]     | |                                    `__awaitee` calls a custom destructor
[INFO] [stdout]     | |                                    `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout]  79 | |                 if active_count >= max_trades { continue; }
[INFO] [stdout] ...   |
[INFO] [stdout]  84 | |                         let mut buffer = scanner.ws_buffer.lock().await;
[INFO] [stdout]     | |                             ----------   ------------------------------
[INFO] [stdout]     | |                             |            |                        |
[INFO] [stdout]     | |                             |            |                        this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]     | |                             |            |                        `#4` will be dropped later as of Edition 2024
[INFO] [stdout]     | |                             |            this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]     | |                             |            `#3` will be dropped later as of Edition 2024
[INFO] [stdout]     | |                             `buffer` calls a custom destructor
[INFO] [stdout]     | |                             `buffer` will be dropped later as of Edition 2024
[INFO] [stdout] ...   |
[INFO] [stdout]  91 | |                         let mut trades = shared_trades.lock().await;
[INFO] [stdout]     | |                             ----------   --------------------------
[INFO] [stdout]     | |                             |            |                    |
[INFO] [stdout]     | |                             |            |                    this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]     | |                             |            |                    `#6` will be dropped later as of Edition 2024
[INFO] [stdout]     | |                             |            this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]     | |                             |            `#5` will be dropped later as of Edition 2024
[INFO] [stdout]     | |                             `trades` calls a custom destructor
[INFO] [stdout]     | |                             `trades` will be dropped later as of Edition 2024
[INFO] [stdout] ...   |
[INFO] [stdout] 100 | |                 let active_count = executor.active_trades.lock().await.len();
[INFO] [stdout]     | |                                    -----------------------------------
[INFO] [stdout]     | |                                    |                             |
[INFO] [stdout]     | |                                    |                             this value will be stored in a temporary; let us call it `#9`
[INFO] [stdout]     | |                                    |                             `#9` will be dropped later as of Edition 2024
[INFO] [stdout]     | |                                    this value will be stored in a temporary; let us call it `#7`
[INFO] [stdout]     | |                                    `#7` will be dropped later as of Edition 2024
[INFO] [stdout]     | |                                    this value will be stored in a temporary; let us call it `#8`
[INFO] [stdout]     | |                                    `#8` will be dropped later as of Edition 2024
[INFO] [stdout] ...   |
[INFO] [stdout] 105 | |                     if let Ok(mut bal) = tui_state.balance.lock() {
[INFO] [stdout]     | |                               -------    ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     | |                               |          |
[INFO] [stdout]     | |                               |          this value will be stored in a temporary; let us call it `#15`
[INFO] [stdout]     | |                               |          up until Edition 2021 `#15` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     | |                               `bal` calls a custom destructor
[INFO] [stdout]     | |                               `bal` will be dropped later as of Edition 2024
[INFO] [stdout] ...   |
[INFO] [stdout] 108 | |                 }
[INFO] [stdout]     | |                 - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout] ...   |
[INFO] [stdout] 115 | |                 let active_addresses: Vec<String> = executor.active_trades.lock().await
[INFO] [stdout]     | |                                                     -----------------------------------
[INFO] [stdout]     | |                                                     |                             |
[INFO] [stdout]     | |                                                     |                             this value will be stored in a temporary; let us call it `#12`
[INFO] [stdout]     | |                                                     |                             `#12` will be dropped later as of Edition 2024
[INFO] [stdout]     | |                                                     this value will be stored in a temporary; let us call it `#10`
[INFO] [stdout]     | |                                                     `#10` will be dropped later as of Edition 2024
[INFO] [stdout]     | |                                                     this value will be stored in a temporary; let us call it `#11`
[INFO] [stdout]     | |                                                     `#11` will be dropped later as of Edition 2024
[INFO] [stdout] ...   |
[INFO] [stdout] 118 | |                 if let Some(token) = scanner.scan_for_opportunities(&active_addresses).await {
[INFO] [stdout]     | |                                      -------------------------------------------------------
[INFO] [stdout]     | |                                      |
[INFO] [stdout]     | |                                      this value will be stored in a temporary; let us call it `#13`
[INFO] [stdout]     | |                                      `#13` will be dropped later as of Edition 2024
[INFO] [stdout] 119 | |                     handle_buy(token, &executor, &config, &birdeye, &shared_trades, &tui_state, &ws_cmd_tx).await;
[INFO] [stdout]     | |                     ---------------------------------------------------------------------------------------------
[INFO] [stdout]     | |                     |
[INFO] [stdout]     | |                     this value will be stored in a temporary; let us call it `#14`
[INFO] [stdout]     | |                     `#14` will be dropped later as of Edition 2024
[INFO] [stdout] ...   |
[INFO] [stdout] 122 | |         }
[INFO] [stdout]     | |         -
[INFO] [stdout]     | |         |
[INFO] [stdout]     | |         `futures_init` calls a custom destructor
[INFO] [stdout]     | |         `futures_init` will be dropped later as of Edition 2024
[INFO] [stdout]     | |_________`futures` calls a custom destructor
[INFO] [stdout]     |           `futures` will be dropped later as of Edition 2024
[INFO] [stdout]     |
[INFO] [stdout] note: `#15` invokes this custom destructor
[INFO] [stdout]    --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sync/poison/mutex.rs:741:0
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.52.1/src/sync/mutex.rs:964:1
[INFO] [stdout]     |
[INFO] [stdout] 964 | impl<T: ?Sized> Drop for MutexGuard<'_, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.52.1/src/sync/mutex.rs:964:1
[INFO] [stdout]     |
[INFO] [stdout] 964 | impl<T: ?Sized> Drop for MutexGuard<'_, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `buffer` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.52.1/src/sync/mutex.rs:964:1
[INFO] [stdout]     |
[INFO] [stdout] 964 | impl<T: ?Sized> Drop for MutexGuard<'_, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.52.1/src/sync/mutex.rs:964:1
[INFO] [stdout]     |
[INFO] [stdout] 964 | impl<T: ?Sized> Drop for MutexGuard<'_, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `trades` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.52.1/src/sync/mutex.rs:964:1
[INFO] [stdout]     |
[INFO] [stdout] 964 | impl<T: ?Sized> Drop for MutexGuard<'_, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#6` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.52.1/src/sync/mutex.rs:964:1
[INFO] [stdout]     |
[INFO] [stdout] 964 | impl<T: ?Sized> Drop for MutexGuard<'_, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#7` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.52.1/src/sync/mutex.rs:964:1
[INFO] [stdout]     |
[INFO] [stdout] 964 | impl<T: ?Sized> Drop for MutexGuard<'_, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#9` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.52.1/src/sync/mutex.rs:964:1
[INFO] [stdout]     |
[INFO] [stdout] 964 | impl<T: ?Sized> Drop for MutexGuard<'_, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `bal` invokes this custom destructor
[INFO] [stdout]    --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sync/poison/mutex.rs:741:0
[INFO] [stdout] note: `#10` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.52.1/src/sync/mutex.rs:964:1
[INFO] [stdout]     |
[INFO] [stdout] 964 | impl<T: ?Sized> Drop for MutexGuard<'_, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#12` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.52.1/src/sync/mutex.rs:964:1
[INFO] [stdout]     |
[INFO] [stdout] 964 | impl<T: ?Sized> Drop for MutexGuard<'_, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/executor.rs:468:35
[INFO] [stdout]      |
[INFO] [stdout]  454 |             tokio::time::sleep(std::time::Duration::from_secs(3)).await;
[INFO] [stdout]      |             -----------------------------------------------------------
[INFO] [stdout]      |             |
[INFO] [stdout]      |             `__awaitee` calls a custom destructor
[INFO] [stdout]      |             `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  458 |                 let trades = self.active_trades.lock().await;
[INFO] [stdout]      |                     ------   -------------------------------
[INFO] [stdout]      |                     |        |                         |
[INFO] [stdout]      |                     |        |                         this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                     |        |                         `#2` will be dropped later as of Edition 2024
[INFO] [stdout]      |                     |        this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                     |        `#1` will be dropped later as of Edition 2024
[INFO] [stdout]      |                     `trades` calls a custom destructor
[INFO] [stdout]      |                     `trades` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  467 |             if let Ok(resp) = jup_client.get(format!("https://api.jup.ag/price/v2?ids={}", address)).send().await {
[INFO] [stdout]      |                               -----------------------------------------------------------------------------------
[INFO] [stdout]      |                               |                                                                             |
[INFO] [stdout]      |                               |                                                                             this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]      |                               |                                                                             `#5` will be dropped later as of Edition 2024
[INFO] [stdout]      |                               this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                               `#3` will be dropped later as of Edition 2024
[INFO] [stdout]      |                               this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |                               `#4` will be dropped later as of Edition 2024
[INFO] [stdout]  468 |                 if let Ok(body) = resp.json::<serde_json::Value>().await {
[INFO] [stdout]      |                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]      |                                   |                                |
[INFO] [stdout]      |                                   |                                this value will be stored in a temporary; let us call it `#15`
[INFO] [stdout]      |                                   |                                up until Edition 2021 `#15` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                                   |                                this value will be stored in a temporary; let us call it `#7`
[INFO] [stdout]      |                                   |                                `#7` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                   this value will be stored in a temporary; let us call it `#14`
[INFO] [stdout]      |                                   up until Edition 2021 `#14` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                                   this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]      |                                   `#6` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  476 |             }
[INFO] [stdout]      |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout] ...
[INFO] [stdout]  481 |                 if let Ok(price) = self.birdeye.get_price(&address).await {
[INFO] [stdout]      |                                    --------------------------------------
[INFO] [stdout]      |                                    |                                |
[INFO] [stdout]      |                                    |                                this value will be stored in a temporary; let us call it `#9`
[INFO] [stdout]      |                                    |                                `#9` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                    this value will be stored in a temporary; let us call it `#8`
[INFO] [stdout]      |                                    `#8` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  490 |                 let mut trades = self.active_trades.lock().await;
[INFO] [stdout]      |                     ----------   -------------------------------
[INFO] [stdout]      |                     |            |                         |
[INFO] [stdout]      |                     |            |                         this value will be stored in a temporary; let us call it `#12`
[INFO] [stdout]      |                     |            |                         `#12` will be dropped later as of Edition 2024
[INFO] [stdout]      |                     |            this value will be stored in a temporary; let us call it `#11`
[INFO] [stdout]      |                     |            `#11` will be dropped later as of Edition 2024
[INFO] [stdout]      |                     this value will be stored in a temporary; let us call it `#10`
[INFO] [stdout]      |                     `#10` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  559 |                 self.execute_sell_action(&token, 50, "TP1", current_value_sol).await;
[INFO] [stdout]      |                 --------------------------------------------------------------------
[INFO] [stdout]      |                 |
[INFO] [stdout]      |                 this value will be stored in a temporary; let us call it `#13`
[INFO] [stdout]      |                 `#13` will be dropped later as of Edition 2024
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#14` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#14` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `__awaitee` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/pin-project-lite-0.2.17/src/lib.rs:1317:9
[INFO] [stdout]      |
[INFO] [stdout] 1317 | /         impl $(<
[INFO] [stdout] 1318 | |             $( $lifetime $(: $lifetime_bound)? ,)*
[INFO] [stdout] 1319 | |             $( $generics
[INFO] [stdout] 1320 | |                 $(: $generics_bound)?
[INFO] [stdout] ...    |
[INFO] [stdout] 1323 | |             ),*
[INFO] [stdout] 1324 | |         >)? $crate::__private::Drop for $self_ty
[INFO] [stdout]      | |________________________________________________^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.52.1/src/runtime/time/entry.rs:280:1
[INFO] [stdout]      |
[INFO] [stdout]  280 | / pin_project! {
[INFO] [stdout] ...    |
[INFO] [stdout]  310 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout] note: `trades` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.52.1/src/sync/mutex.rs:964:1
[INFO] [stdout]      |
[INFO] [stdout]  964 | impl<T: ?Sized> Drop for MutexGuard<'_, T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.52.1/src/sync/mutex.rs:964:1
[INFO] [stdout]      |
[INFO] [stdout]  964 | impl<T: ?Sized> Drop for MutexGuard<'_, T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#3` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#5` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#5` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#7` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#7` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#9` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#10` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.52.1/src/sync/mutex.rs:964:1
[INFO] [stdout]      |
[INFO] [stdout]  964 | impl<T: ?Sized> Drop for MutexGuard<'_, T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#12` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.52.1/src/sync/mutex.rs:964:1
[INFO] [stdout]      |
[INFO] [stdout]  964 | impl<T: ?Sized> Drop for MutexGuard<'_, T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]      = note: `--force-warn tail-expr-drop-order` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout]      = note: this warning originates in the macro `$crate::__pin_project_make_drop_impl` which comes from the expansion of the macro `pin_project` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/executor.rs:481:36
[INFO] [stdout]      |
[INFO] [stdout]  454 |             tokio::time::sleep(std::time::Duration::from_secs(3)).await;
[INFO] [stdout]      |             -----------------------------------------------------------
[INFO] [stdout]      |             |
[INFO] [stdout]      |             `__awaitee` calls a custom destructor
[INFO] [stdout]      |             `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  458 |                 let trades = self.active_trades.lock().await;
[INFO] [stdout]      |                     ------   -------------------------------
[INFO] [stdout]      |                     |        |                         |
[INFO] [stdout]      |                     |        |                         this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                     |        |                         `#2` will be dropped later as of Edition 2024
[INFO] [stdout]      |                     |        this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                     |        `#1` will be dropped later as of Edition 2024
[INFO] [stdout]      |                     `trades` calls a custom destructor
[INFO] [stdout]      |                     `trades` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  467 |             if let Ok(resp) = jup_client.get(format!("https://api.jup.ag/price/v2?ids={}", address)).send().await {
[INFO] [stdout]      |                               -----------------------------------------------------------------------------------
[INFO] [stdout]      |                               |                                                                             |
[INFO] [stdout]      |                               |                                                                             this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]      |                               |                                                                             `#5` will be dropped later as of Edition 2024
[INFO] [stdout]      |                               this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                               `#3` will be dropped later as of Edition 2024
[INFO] [stdout]      |                               this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |                               `#4` will be dropped later as of Edition 2024
[INFO] [stdout]  468 |                 if let Ok(body) = resp.json::<serde_json::Value>().await {
[INFO] [stdout]      |                                   --------------------------------------
[INFO] [stdout]      |                                   |                                |
[INFO] [stdout]      |                                   |                                this value will be stored in a temporary; let us call it `#7`
[INFO] [stdout]      |                                   |                                `#7` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                   this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]      |                                   `#6` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  481 |                 if let Ok(price) = self.birdeye.get_price(&address).await {
[INFO] [stdout]      |                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]      |                                    |                                |
[INFO] [stdout]      |                                    |                                this value will be stored in a temporary; let us call it `#15`
[INFO] [stdout]      |                                    |                                up until Edition 2021 `#15` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                                    |                                this value will be stored in a temporary; let us call it `#9`
[INFO] [stdout]      |                                    |                                `#9` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                    this value will be stored in a temporary; let us call it `#14`
[INFO] [stdout]      |                                    up until Edition 2021 `#14` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                                    this value will be stored in a temporary; let us call it `#8`
[INFO] [stdout]      |                                    `#8` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  487 |             }
[INFO] [stdout]      |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout] ...
[INFO] [stdout]  490 |                 let mut trades = self.active_trades.lock().await;
[INFO] [stdout]      |                     ----------   -------------------------------
[INFO] [stdout]      |                     |            |                         |
[INFO] [stdout]      |                     |            |                         this value will be stored in a temporary; let us call it `#12`
[INFO] [stdout]      |                     |            |                         `#12` will be dropped later as of Edition 2024
[INFO] [stdout]      |                     |            this value will be stored in a temporary; let us call it `#11`
[INFO] [stdout]      |                     |            `#11` will be dropped later as of Edition 2024
[INFO] [stdout]      |                     this value will be stored in a temporary; let us call it `#10`
[INFO] [stdout]      |                     `#10` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  559 |                 self.execute_sell_action(&token, 50, "TP1", current_value_sol).await;
[INFO] [stdout]      |                 --------------------------------------------------------------------
[INFO] [stdout]      |                 |
[INFO] [stdout]      |                 this value will be stored in a temporary; let us call it `#13`
[INFO] [stdout]      |                 `#13` will be dropped later as of Edition 2024
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#14` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `__awaitee` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/pin-project-lite-0.2.17/src/lib.rs:1317:9
[INFO] [stdout]      |
[INFO] [stdout] 1317 | /         impl $(<
[INFO] [stdout] 1318 | |             $( $lifetime $(: $lifetime_bound)? ,)*
[INFO] [stdout] 1319 | |             $( $generics
[INFO] [stdout] 1320 | |                 $(: $generics_bound)?
[INFO] [stdout] ...    |
[INFO] [stdout] 1323 | |             ),*
[INFO] [stdout] 1324 | |         >)? $crate::__private::Drop for $self_ty
[INFO] [stdout]      | |________________________________________________^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.52.1/src/runtime/time/entry.rs:280:1
[INFO] [stdout]      |
[INFO] [stdout]  280 | / pin_project! {
[INFO] [stdout] ...    |
[INFO] [stdout]  310 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout] note: `trades` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.52.1/src/sync/mutex.rs:964:1
[INFO] [stdout]      |
[INFO] [stdout]  964 | impl<T: ?Sized> Drop for MutexGuard<'_, T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.52.1/src/sync/mutex.rs:964:1
[INFO] [stdout]      |
[INFO] [stdout]  964 | impl<T: ?Sized> Drop for MutexGuard<'_, T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#3` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#5` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#5` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#7` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#7` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#9` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#10` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.52.1/src/sync/mutex.rs:964:1
[INFO] [stdout]      |
[INFO] [stdout]  964 | impl<T: ?Sized> Drop for MutexGuard<'_, T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#12` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.52.1/src/sync/mutex.rs:964:1
[INFO] [stdout]      |
[INFO] [stdout]  964 | impl<T: ?Sized> Drop for MutexGuard<'_, T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]      = note: this warning originates in the macro `$crate::__pin_project_make_drop_impl` which comes from the expansion of the macro `pin_project` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/executor.rs:740:108
[INFO] [stdout]     |
[INFO] [stdout] 616 |         let client = reqwest::Client::new();
[INFO] [stdout]     |             ------
[INFO] [stdout]     |             |
[INFO] [stdout]     |             `client` calls a custom destructor
[INFO] [stdout]     |             `client` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 740 |         match do_sell(&client, &quote_url, headers, &self.jup_base, wallet, &self.config, &self.write_rpc).await {
[INFO] [stdout]     |                                                                                                            ^^^^^
[INFO] [stdout]     |                                                                                                            |
[INFO] [stdout]     |                                                                                                            this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                                                                                                            up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 748 |     }
[INFO] [stdout]     |     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `client` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.32/src/oneshot.rs:387:1
[INFO] [stdout]     |
[INFO] [stdout] 387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.32/src/oneshot.rs:387:1
[INFO] [stdout]     |
[INFO] [stdout] 387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.52.1/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]     |
[INFO] [stdout] 225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/main.rs:105:42
[INFO] [stdout]     |
[INFO] [stdout]  76 | /         tokio::select! {
[INFO] [stdout]  77 | |             Some(event) = ws_rx.recv() => {
[INFO] [stdout]  78 | |                 let active_count = executor.active_trades.lock().await.len();
[INFO] [stdout]     | |                                    -----------------------------------
[INFO] [stdout]     | |                                    |                             |
[INFO] [stdout]     | |                                    |                             this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     | |                                    |                             `#2` will be dropped later as of Edition 2024
[INFO] [stdout]     | |                                    this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     | |                                    `#1` will be dropped later as of Edition 2024
[INFO] [stdout]     | |                                    `__awaitee` calls a custom destructor
[INFO] [stdout]     | |                                    `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout]  79 | |                 if active_count >= max_trades { continue; }
[INFO] [stdout] ...   |
[INFO] [stdout]  84 | |                         let mut buffer = scanner.ws_buffer.lock().await;
[INFO] [stdout]     | |                             ----------   ------------------------------
[INFO] [stdout]     | |                             |            |                        |
[INFO] [stdout]     | |                             |            |                        this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]     | |                             |            |                        `#4` will be dropped later as of Edition 2024
[INFO] [stdout]     | |                             |            this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]     | |                             |            `#3` will be dropped later as of Edition 2024
[INFO] [stdout]     | |                             `buffer` calls a custom destructor
[INFO] [stdout]     | |                             `buffer` will be dropped later as of Edition 2024
[INFO] [stdout] ...   |
[INFO] [stdout]  91 | |                         let mut trades = shared_trades.lock().await;
[INFO] [stdout]     | |                             ----------   --------------------------
[INFO] [stdout]     | |                             |            |                    |
[INFO] [stdout]     | |                             |            |                    this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]     | |                             |            |                    `#6` will be dropped later as of Edition 2024
[INFO] [stdout]     | |                             |            this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]     | |                             |            `#5` will be dropped later as of Edition 2024
[INFO] [stdout]     | |                             `trades` calls a custom destructor
[INFO] [stdout]     | |                             `trades` will be dropped later as of Edition 2024
[INFO] [stdout] ...   |
[INFO] [stdout] 100 | |                 let active_count = executor.active_trades.lock().await.len();
[INFO] [stdout]     | |                                    -----------------------------------
[INFO] [stdout]     | |                                    |                             |
[INFO] [stdout]     | |                                    |                             this value will be stored in a temporary; let us call it `#9`
[INFO] [stdout]     | |                                    |                             `#9` will be dropped later as of Edition 2024
[INFO] [stdout]     | |                                    this value will be stored in a temporary; let us call it `#7`
[INFO] [stdout]     | |                                    `#7` will be dropped later as of Edition 2024
[INFO] [stdout]     | |                                    this value will be stored in a temporary; let us call it `#8`
[INFO] [stdout]     | |                                    `#8` will be dropped later as of Edition 2024
[INFO] [stdout] ...   |
[INFO] [stdout] 105 | |                     if let Ok(mut bal) = tui_state.balance.lock() {
[INFO] [stdout]     | |                               -------    ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     | |                               |          |
[INFO] [stdout]     | |                               |          this value will be stored in a temporary; let us call it `#15`
[INFO] [stdout]     | |                               |          up until Edition 2021 `#15` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     | |                               `bal` calls a custom destructor
[INFO] [stdout]     | |                               `bal` will be dropped later as of Edition 2024
[INFO] [stdout] ...   |
[INFO] [stdout] 108 | |                 }
[INFO] [stdout]     | |                 - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout] ...   |
[INFO] [stdout] 115 | |                 let active_addresses: Vec<String> = executor.active_trades.lock().await
[INFO] [stdout]     | |                                                     -----------------------------------
[INFO] [stdout]     | |                                                     |                             |
[INFO] [stdout]     | |                                                     |                             this value will be stored in a temporary; let us call it `#12`
[INFO] [stdout]     | |                                                     |                             `#12` will be dropped later as of Edition 2024
[INFO] [stdout]     | |                                                     this value will be stored in a temporary; let us call it `#10`
[INFO] [stdout]     | |                                                     `#10` will be dropped later as of Edition 2024
[INFO] [stdout]     | |                                                     this value will be stored in a temporary; let us call it `#11`
[INFO] [stdout]     | |                                                     `#11` will be dropped later as of Edition 2024
[INFO] [stdout] ...   |
[INFO] [stdout] 118 | |                 if let Some(token) = scanner.scan_for_opportunities(&active_addresses).await {
[INFO] [stdout]     | |                                      -------------------------------------------------------
[INFO] [stdout]     | |                                      |
[INFO] [stdout]     | |                                      this value will be stored in a temporary; let us call it `#13`
[INFO] [stdout]     | |                                      `#13` will be dropped later as of Edition 2024
[INFO] [stdout] 119 | |                     handle_buy(token, &executor, &config, &birdeye, &shared_trades, &tui_state, &ws_cmd_tx).await;
[INFO] [stdout]     | |                     ---------------------------------------------------------------------------------------------
[INFO] [stdout]     | |                     |
[INFO] [stdout]     | |                     this value will be stored in a temporary; let us call it `#14`
[INFO] [stdout]     | |                     `#14` will be dropped later as of Edition 2024
[INFO] [stdout] ...   |
[INFO] [stdout] 122 | |         }
[INFO] [stdout]     | |         -
[INFO] [stdout]     | |         |
[INFO] [stdout]     | |         `futures_init` calls a custom destructor
[INFO] [stdout]     | |         `futures_init` will be dropped later as of Edition 2024
[INFO] [stdout]     | |_________`futures` calls a custom destructor
[INFO] [stdout]     |           `futures` will be dropped later as of Edition 2024
[INFO] [stdout]     |
[INFO] [stdout] note: `#15` invokes this custom destructor
[INFO] [stdout]    --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sync/poison/mutex.rs:741:0
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.52.1/src/sync/mutex.rs:964:1
[INFO] [stdout]     |
[INFO] [stdout] 964 | impl<T: ?Sized> Drop for MutexGuard<'_, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.52.1/src/sync/mutex.rs:964:1
[INFO] [stdout]     |
[INFO] [stdout] 964 | impl<T: ?Sized> Drop for MutexGuard<'_, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `buffer` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.52.1/src/sync/mutex.rs:964:1
[INFO] [stdout]     |
[INFO] [stdout] 964 | impl<T: ?Sized> Drop for MutexGuard<'_, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.52.1/src/sync/mutex.rs:964:1
[INFO] [stdout]     |
[INFO] [stdout] 964 | impl<T: ?Sized> Drop for MutexGuard<'_, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `trades` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.52.1/src/sync/mutex.rs:964:1
[INFO] [stdout]     |
[INFO] [stdout] 964 | impl<T: ?Sized> Drop for MutexGuard<'_, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#6` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.52.1/src/sync/mutex.rs:964:1
[INFO] [stdout]     |
[INFO] [stdout] 964 | impl<T: ?Sized> Drop for MutexGuard<'_, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#7` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.52.1/src/sync/mutex.rs:964:1
[INFO] [stdout]     |
[INFO] [stdout] 964 | impl<T: ?Sized> Drop for MutexGuard<'_, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#9` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.52.1/src/sync/mutex.rs:964:1
[INFO] [stdout]     |
[INFO] [stdout] 964 | impl<T: ?Sized> Drop for MutexGuard<'_, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `bal` invokes this custom destructor
[INFO] [stdout]    --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sync/poison/mutex.rs:741:0
[INFO] [stdout] note: `#10` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.52.1/src/sync/mutex.rs:964:1
[INFO] [stdout]     |
[INFO] [stdout] 964 | impl<T: ?Sized> Drop for MutexGuard<'_, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#12` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.52.1/src/sync/mutex.rs:964:1
[INFO] [stdout]     |
[INFO] [stdout] 964 | impl<T: ?Sized> Drop for MutexGuard<'_, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 36s
[INFO] [stderr] crater-edition-check: hawkeye-shield v0.1.0 (/opt/rustwide/workdir) updating edition from 2021 to 2024
[INFO] [stderr]     Checking hawkeye-shield v0.1.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 38s
[INFO] [stderr] crater-edition-check all packages now at latest edition
[INFO] [stderr] crater-edition-check: all finished
[INFO] running `Command { std: "docker" "inspect" "66a5007fc91ed8c333e5487a16608592cf008b6893fde1e122d29bee26ff1e50", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "66a5007fc91ed8c333e5487a16608592cf008b6893fde1e122d29bee26ff1e50", kill_on_drop: false }`
[INFO] [stdout] 66a5007fc91ed8c333e5487a16608592cf008b6893fde1e122d29bee26ff1e50
